home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 January: Mac OS SDK / Dev.CD Jan 97 SDK2.toast / Development Kits (Disc 2) / OpenDoc Development Framework / Getting Started / MPW Development / MPW Additions / INTO Interfaces&Libraries / Cyberdog SDK / PublicIncludes / Cyberdog.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-08-02  |  19.9 KB  |  359 lines  |  [TEXT/MPS ]

  1. /*
  2.     File:        Cyberdog.h
  3.  
  4.     Contains:    xxx put contents here xxx
  5.  
  6.     Written by:    the cyberdogs
  7.  
  8.     Copyright:    © 1996 by Apple Computer, Inc., all rights reserved.
  9.  
  10.     Change History (most recent first):
  11.  
  12.         <10>     6/25/96    JCM        added preferred mail and news encodings pref
  13.          <9>     6/25/96    mmn        add kCDHTMLTagKey
  14.          <8>     6/24/96    HL        fix Cyberdog.h to work with the 68K project
  15.          <7>     6/22/96    JCM        added key for preferred language
  16.          <6>     6/20/96    HL        add kNotebookKindTagIntCategory
  17.          <5>     6/19/96    jcr        Add kMNPrefsKind
  18.          <4>     6/11/96    tb        Added kCyberICNewsPrefMaxDownload for saving the number of
  19.                                     articles to download inside IC.
  20.          <3>      6/4/96    jse        add EmbeddedKey for ParamSet
  21.          <2>     5/30/96    jcr        Add MailStatusPart
  22.         <14>     5/20/96    HL        CFM-68K work
  23.         <13>     5/20/96    jse        1351297 - add SendOnCheck prefs string
  24.         <12>      5/7/96    mmn        error codes
  25.         <11>      4/5/96    mmn        add WindowHint and OpenerPartDestDraft key
  26.         <10>      4/3/96    mmn        add not resolved error
  27.          <9>      4/3/96    cc™        removing mail server defines
  28.          <8>     3/30/96    mc        B3 fixes
  29.          <7>     3/26/96    sdh        new error code
  30.          <6>     3/23/96    sdh        1327668
  31.          <5>     3/12/96    mmn        export GetCyberSession() & InitCyberdog()
  32.          <4>      3/9/96    sdh        new IC keys
  33.          <3>      3/4/96    cc™        Mail Fixes and Link Warnings removed
  34.          <2>     2/29/96    mc        More API Freeze
  35.  
  36.     To Do:
  37. */
  38.  
  39. #ifndef __CYBERDOG__
  40. #define    __CYBERDOG__
  41.  
  42. // ••• Functions
  43.  
  44. #ifndef REZ
  45.  
  46. class    CyberSession;
  47. struct     Environment;
  48. class     ODSession;
  49.  
  50. #if PRAGMA_IMPORT_SUPPORTED
  51. #pragma import on
  52. #endif
  53. extern "C" pascal OSErr            InitCyberdog(Environment* ev, ODSession* session);
  54. extern "C" pascal CyberSession*    GetCyberSession(Environment* ev);
  55. extern "C" pascal void DoCyberdogAboutPublic(Environment* , ODSession* );
  56. #if PRAGMA_IMPORT_SUPPORTED
  57. #pragma import reset
  58. #endif
  59.  
  60. #endif
  61.  
  62. // ••• Extension Names
  63.  
  64. #define kCyberPartExtension                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Extension:CyberPart"
  65. #define kCyberConnectExtension                "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Extension:Connect"
  66. #define kCyberContainerExtension            "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Extension:Container"
  67. #define kCyberFormExtension                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Extension:Form"
  68. #define kCyberItemPromptExtension            "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Extension:CyberItemPrompt"
  69. #define kCyberLogExtension                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Extension:Log"
  70. #define kCyberNavigatorExtension            "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Extension:Navigator"
  71. #define kCyberNotebookExtension                "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Extension:Notebook"
  72. #define kCyberOpenerPartExtension            "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Extension:OpenerPart"
  73. #define kCyberPrefsExtension                "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Extension:Prefs"
  74. #define kCyberProgressPartExtension            "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Extension:ProgressPart"
  75. #define kCyberDownloadExtension                "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Extension:Download"
  76.  
  77.  
  78. // ••• Part Kinds
  79.  
  80. #define kConnectDialogKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:ConnectDialog"        // Kind
  81. #define kDownloadPartKind                     "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:DownloadPart"
  82. #define kLogKind                            "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:Log"                // Kind
  83. #define kLogManagerKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:LogManager"            // Kind
  84. #define kMailStatusPartKind                 "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:MailStatus"
  85. #define kMNPrefsDlgKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:MNPrefsDlg"            // Kind
  86. #define kNavigatorKind                         "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:Navigator"            // Kind
  87. #define kNetscapePluginKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:NetscapePlugin"        // Kind
  88. #define kNotebookKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:Notebook"            // Kind
  89. #define kNotebookManagerKind                "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:NotebookManager"    // Kind
  90. #define kOpenerPartKind                     "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:Opener"
  91. #define kPrefsDialogKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:PrefsDialog"        // Kind
  92. #define kTelnetPartKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:Telnet"    // Kind
  93. // CyberItem Kinds
  94. #define kCyberItemKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem"            // Kind
  95. #define kCyberItemGroupKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItemGroup"        // Kind
  96. // CyberPartKind
  97. #define kCyberPartKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberPart"            // Kind
  98.  
  99. // ••• Data Format Definitions
  100.  
  101.  
  102. // Tags used within the kNotebookKind data format
  103. #define kNotebookKindTagCyberItem            'cybr'
  104. #define kNotebookKindTagCategory            'catg'
  105. #define kNotebookKindTagIntCategory            'cati'    // category with script code
  106.  
  107. // Tags used within the kLogKind data format
  108. #define kLogKindAlphabetical                'alph'
  109. #define kLogKindChronological                'chrn'
  110. #define kLogKindHierarchical                'hier'
  111.  
  112. // Signature and Version used within kCyberItemKind data format
  113. #define kCyberItemSignature                    'cy'
  114. #define kCyberItemVersionNum                1
  115.  
  116.  
  117. // ••• SimpleCyberService Class Name
  118.  
  119. #define kSimpleCyberServiceClassName        "SimpleCyberService"
  120.  
  121.  
  122. // ••• Cyberdog Defined Creators
  123.  
  124. #define kCyberdogCreator            'dogz'
  125. #define kNavigatorCreator            'dogv'
  126.  
  127.  
  128. // ••• Cyberdog Command Numbers
  129.  
  130. #define kCDCmdRefresh                     1
  131.  
  132.  
  133. // ••• MIME Strings and Kinds
  134.  
  135. // Strings
  136. #define kApplicationAppleFile                "application/applefile"
  137. #define kApplicationCompress                "application/x-compress"
  138. #define kApplicationMacBinary                "application/macbinary"
  139. #define kApplicationMacBinhex40                "application/mac-binhex40"
  140. #define kApplicationOctetStream                "application/octet-stream"
  141. #define kApplicationPostscript                "application/postscript"
  142. #define kApplicationText                    "application/text"
  143. #define kAudioAIFF                            "audio/x-aiff"
  144. #define kAudioBasic                            "audio/basic"
  145. #define kAudioWAV                            "audio/x-wav"
  146. #define kImageGIF                            "image/gif"
  147. #define kImageJPEG                            "image/jpeg"
  148. #define kImagePICT                            "image/x-pict"
  149. #define kImageTIFF                            "image/tiff"
  150. #define kImageXBM                            "image/x-xbitmap"
  151. #define kImageXPM                            "image/x-xpixmap"
  152. #define kMessageExternalBody                "message/external-body"
  153. #define kMessagePartial                        "message/partial"
  154. #define kMessageRFC822                        "message/rfc822"
  155. #define kMultipartAlternative                "multipart/alternative"
  156. #define kMultipartDigest                    "multipart/digest"
  157. #define kMultipartMixed                        "multipart/mixed"
  158. #define kMultipartParallel                    "multipart/parallel"
  159. #define kTextEnriched                        "text/enriched"
  160. #define kTextHTML                            "text/html"
  161. #define kTextPlain                            "text/plain"
  162. #define kVideoAVI                            "video/avi"
  163. #define kVideoMPEG                            "video/mpeg"
  164. #define kVideoQuickTime                        "video/quicktime"
  165. // Kinds
  166. #define kMIMEPrefix                            "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:"
  167. #define kApplicationAppleFileKind            "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:application/applefile"
  168. #define kApplicationCompressKind            "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:application/x-compress"
  169. #define kApplicationMacBinaryKind            "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:application/macbinary"
  170. #define kApplicationMacBinhex40Kind            "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:application/mac-binhex40"
  171. #define kApplicationOctetStreamKind            "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:application/octet-stream"
  172. #define kApplicationPostscriptKind            "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:application/postscript"
  173. #define kApplicationTextKind                "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:application/text"
  174. #define kAudioAIFFKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:audio/x-aiff"
  175. #define kAudioBasicKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:audio/basic"
  176. #define kAudioWAVKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:audio/x-wav"
  177. #define kImageGIFKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:image/gif"
  178. #define kImageJPEGKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:image/jpeg"
  179. #define kImagePICTKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:image/x-pict"
  180. #define kImageTIFFKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:image/tiff"
  181. #define kImageXBMKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:image/x-xbitmap"
  182. #define kImageXPMKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:image/x-xpixmap"
  183. #define kMessageExternalBodyKind            "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:message/external-body"
  184. #define kMessagePartialKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:message/partial"
  185. #define kMessageRFC822Kind                    "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:message/rfc822"
  186. #define kMultipartAlternativeKind            "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:multipart/alternative"
  187. #define kMultipartDigestKind                "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:multipart/digest"
  188. #define kMultipartMixedKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:multipart/mixed"
  189. #define kMultipartParallelKind                "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:multipart/parallel"
  190. #define kTextEnrichedKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:text/enriched"
  191. #define kTextHTMLKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:text/html"
  192. #define kTextPlainKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:text/plain"
  193. #define kVideoAVIKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:video/avi"
  194. #define kVideoMPEGKind                        "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:video/mpeg"
  195. #define kVideoQuickTimeKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::MIME:video/quicktime"
  196. // Reference Kinds
  197. #define kApplicationAppleFileRefKind        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:application/applefile"
  198. #define kApplicationCompressRefKind            "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:application/x-compress"
  199. #define kApplicationMacBinaryRefKind        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:application/macbinary"
  200. #define kApplicationMacBinhex40RefKind        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:application/mac-binhex40"
  201. #define kApplicationOctetStreamRefKind        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:application/octet-stream"
  202. #define kApplicationPostscriptRefKind        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:application/postscript"
  203. #define kApplicationTextRefKind                "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:application/text"
  204. #define kAudioAIFFRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:audio/x-aiff"
  205. #define kAudioBasicRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:audio/basic"
  206. #define kAudioWAVRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:audio/x-wav"
  207. #define kImageGIFRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:image/gif"
  208. #define kImageJPEGRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:image/jpeg"
  209. #define kImagePICTRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:image/x-pict"
  210. #define kImageTIFFRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:image/tiff"
  211. #define kImageXBMRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:image/x-xbitmap"
  212. #define kImageXPMRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:image/x-xpixmap"
  213. #define kMessageExternalBodyRefKind            "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:message/external-body"
  214. #define kMessagePartialRefKind                "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:message/partial"
  215. #define kMessageRFC822RefKind                "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:message/rfc822"
  216. #define kMultipartAlternativeRefKind        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:multipart/alternative"
  217. #define kMultipartDigestRefKind                "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:multipart/digest"
  218. #define kMultipartMixedRefKind                "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:multipart/mixed"
  219. #define kMultipartParallelRefKind            "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:multipart/parallel"
  220. #define kTextEnrichedRefKind                "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:text/enriched"
  221. #define kTextHTMLRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:text/html"
  222. #define kTextPlainRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:text/plain"
  223. #define kVideoAVIRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:video/avi"
  224. #define kVideoMPEGRefKind                    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:video/mpeg"
  225. #define kVideoQuickTimeRefKind                "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Kind:CyberItem:MIME:video/quicktime"
  226.  
  227.  
  228. // ••• Internet Config Keys
  229. // All of these types must begin with an 8 character hexadecimal representation of the
  230. // Cyberdog creator that applies to the preference, e.g. 646F677A == 'dogz'
  231. // Do *not* define a new key when a perfectly good one appears in ICKeys.h
  232. // •!• These need some cleanup.
  233.  
  234. #define kCyberICDefaultScheme            "\p646F677A•DefaultScheme"    /* PString */
  235. #define kCyberICConnectService            "\p646F677A•ConnectService"    /* ODType (part kind) */
  236. // Security
  237. #define kCyberICEnteringSecureSpace        "\p646F677A•EnterSecure"        /* Boolean */
  238. #define kCyberICLeavingSecureSpace        "\p646F677A•LeaveSecure"        /* Boolean */
  239. #define kCyberICMixedSecureDocument        "\p646F677A•MixedSecureDoc"        /* Boolean */
  240. #define kCyberICNonSecureForm            "\p646F677A•NonSecureForm"        /* Boolean */
  241. // FTP
  242. #define kCyberICFTPPrefShowHiddenFiles            "\p646F676F•HiddenFiles"                    /* Boolean */
  243. #define kCyberICFTPPrefUniqueNameOnUpload        "\p646F676F•UniqueNameOnUpload"                /* Boolean */    
  244. #define kCyberICFTPPrefUsePassive                "\p646F676F•UsePassiveMode"                    /* Boolean */    
  245. // Log
  246. #define kCyberICLogSize                    "\p646F676C•LogSize"        /* UInt32 */
  247. // Mail
  248. #define kCyberICDistributionForPostedArticles    "\p646F676D•DistributionForPostedArticles"    /* PString */
  249. #define kCyberICMailDefaultMailboxFolder        "\p646F676D•MailDefaultMailboxFolder"        /* ICFileSpec */
  250. #define kCyberICMailPrefShowButtonsInEnvelope    "\p646F676D•MailShowButtonsInEnvelope"        /* Boolean */
  251. #define kCyberICMailPrefCloseLetterWindow        "\p646F676D•MailCloseLetterWindow"            /* Boolean */
  252. #define kCyberICMailPrefWarnWhenUnsaved            "\p646F676D•MailWarnWhenUnsaved"            /* Boolean */
  253. #define kCyberICMailLeaveMailInOutTrayChoice    "\p646F676D•MailLeaveMailInOutTrayChoice"    /* Boolean, true==permanently, false==for n days */
  254. #define kCyberICMailLeaveMailInOutTrayDays        "\p646F676D•MailLeaveMailInOutTrayDays"        /* short */
  255. #define kCyberICMailPrefExpandEnvelopeNew        "\p646F676D•MailExpandEnvelopeNew"            /* Boolean */
  256. #define kCyberICMailPrefExpandEnvelopeOpen        "\p646F676D•MailExpandEnvelopeOpen"            /* Boolean */
  257. #define kCyberICMailPrefPrintEnvelope            "\p646F676D•MailPrintEnvelope"                /* Boolean */
  258. #define kCyberICMailSendOnCheck                    "\p646F676D•MailSendOnCheck"                /* Boolean */
  259. //    News
  260. //    %%%    tjb    note, the kCyberICDistributionForPostedArticles should probably be defined here as well
  261. //    i'm not sure of the impact of changing it yet.  also, the Notebook stuff below is using 'dogn'
  262. //    instead of 'dogk'.  again, I'm not sure of the consequences of changing it.
  263. //    i'll continue to use 'dogm' for the news stuff, so it doesn't conflict with the notebook stuff
  264. #define kCyberICNewsPrefMaxDownload                "\p646F676D•NewsNumberOfArticlesToDownload"    /* UInt32 */
  265. // Notebook
  266. #define kCyberICNotebookFile                    "\p646F676E•NotebookFile"                    /* ICFileSpec */
  267. // Telnet
  268. #define kCyberICTelnetPrefTerminalEmulation        "\p646F6774•TelnetTerminalEmulation"        /* PString */
  269. #define kCyberICTelnetPrefTerminalToolName        "\p646F6774•TelnetTerminalToolName"            /* PString */
  270. #define kCyberICTelnetPrefTerminalToolConfig    "\p646F6774•TelnetTerminalToolConfig"        /* TEXT */
  271. // Web
  272. #define kCyberICWebPrefHeadlineFont                "\p646F6777•WebHeadlineFont"                /* ICFontRecord */
  273. #define kCyberICWebPrefTextFont                    "\p646F6777•WebTextFont"                    /* ICFontRecord */
  274. #define kCyberICWebPrefTypewriterFont            "\p646F6777•WebTypewriterFont"                /* ICFontRecord */
  275. #define kCyberICWebPrefReadColor                "\p646F6777•WebReadColor"                    /* RGBColor */
  276. #define kCyberICWebPrefUnreadColor                "\p646F6777•WebUnreadColor"                    /* RGBColor */
  277. #define kCyberICWebPrefUnderlineLinks            "\p646F6777•WebUnderlineLinks"                /* Boolean */
  278. // Navigator
  279. #define kCyberICNavigatorPrefShowControlBanner    "\p646F6776•ShowControlBanner"                /* Boolean */
  280. #define kCyberICNavigatorPrefShowLocationBanner    "\p646F6776•ShowLocationBanner"                /* Boolean */
  281. #define kCyberICNavigatorPrefTunnel                "\p646F6776•Tunnel"                            /* Boolean */
  282. // Language
  283. #define kCyberICLanguagePrefPreferredLanguage    "\p646F677A•PreferredLanguage"                /* TICPreferredLanguage */
  284. #define kCyberICLanguagePrefPreferredMailEncodings    "\p646F677A•PreferredMailEncodings"        /* TICPreferredEncodingMap */
  285. #define kCyberICLanguagePrefPreferredNewsEncodings    "\p646F677A•PreferredNewsEncodings"        /* TICPreferredEncodingMap */
  286.  
  287. // ••• Error Codes
  288.  
  289. #define    kCyberErrorsBase            -12000
  290.  
  291. #define kCDErrInvalidObject                (kCyberErrorsBase-0)
  292. #define kCDErrInvalidURL                (kCyberErrorsBase-1)
  293. #define kCDErrReserved1                    (kCyberErrorsBase-2)
  294. #define kCDErrServerBusy                (kCyberErrorsBase-3)
  295. #define kCDErrAuthentication            (kCyberErrorsBase-4)
  296. #define kCDErrReserved2                    (kCyberErrorsBase-5)
  297. #define kCDErrItemUnavailable            (kCyberErrorsBase-6)
  298. #define kCDErrParamAlreadyExists         (kCyberErrorsBase-7)
  299. #define kCDErrNoInternetConfig            (kCyberErrorsBase-8)
  300. #define kCDErrCyberSessionAlreadyExists    (kCyberErrorsBase-9)
  301. #define kCDErrInvalidServiceResource    (kCyberErrorsBase-10)
  302. #define kCDErrNoFileRepresentation        (kCyberErrorsBase-11)
  303. #define kCDErrPasswordRetriesExceeded    (kCyberErrorsBase-12)
  304. #define kCDErrMacTCPorOTMissing            (kCyberErrorsBase-13)
  305. #define kCDErrItemNotResolved            (kCyberErrorsBase-14)
  306.  
  307. // ••• CyberProxy
  308.  
  309. #define     kCyberProxyScheme            "cyberproxy:"
  310.  
  311.  
  312. // ••• OpenerPartDestDraftKey,     a ParameterSet key observed by CyberSession.ObtainOpener when creating new opener parts 
  313. // ••• OpenerPartEmbeddedKey,     a ParameterSet key used by some parts to determine if they're opening embedded in another part 
  314. // ••• HTMLTagKey,                a ParameterSet key that contains the html tag and attributes when opening a display part embedded in an html page.
  315.  
  316. #define kCDOpenerPartDestDraftKey            "Apple:OpenerPartDestDraft"
  317. #define kCDOpenerPartEmbeddedKey            "Apple:OpenerPartEmbedded"
  318. #define kCDHTMLTagKey                        "Apple:HTMLTag"
  319.  
  320. // ••• Window Positioning Hint 
  321.  
  322. #define kCDWindowPositionHintProperty    "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Property:WindowPositionHint"
  323. #define kCDWindowPositionHintValue        "+//ISO 9070/ANSI::113722::US::CI LABS::Apple:Cyberdog:Value:WindowPositionHint"
  324.  
  325. #ifndef REZ
  326.  
  327. // cyberdog may add a window positioning hint to a cyberdog display part's storage unit prior to calling its part->Open method
  328.  
  329. struct CDWindowPositionHint
  330. {
  331.     WindowPtr         behindWindow;    // indicates which window to open behind, a value of -1 means open in front (4 bytes)
  332.     Point            windowPosition; // indicates where to position the window (4 bytes)
  333. };
  334.  
  335.  
  336. //    struct used to represent the preferred language
  337. struct TICPreferredLanguage
  338. {
  339.     short    fCountryCode;
  340.     short    fLanguageCode;
  341. };
  342.  
  343. //    structs used to represent the preferred encodings for various languages
  344. struct TICPreferredEncodingMapEntry
  345. {
  346.     long fScript;
  347.     long fEncoding;
  348. };
  349.  
  350. struct TICPreferredEncodingMap
  351. {
  352.     long                            fNumberEntries;
  353.     TICPreferredEncodingMapEntry    fMap[1];            //    this is really an array of fNumberEntries entries
  354. };
  355.  
  356. #endif
  357.  
  358. #endif
  359.